package com.sunwayworld.basemodule.samplemanage.samplehandle.resource;

import com.alibaba.fastjson.JSONObject;
import com.sunwayworld.framework.log.annotation.Log;
import com.sunwayworld.framework.restful.data.RestJsonWrapperBean;
import com.sunwayworld.framework.support.auditable.resource.GenericAuditableResource;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;

import com.sunwayworld.basemodule.samplemanage.samplehandle.bean.LimsSampleHandleBean;
import com.sunwayworld.basemodule.samplemanage.samplehandle.service.LimsSampleHandleService;
import com.sunwayworld.framework.support.base.resource.GenericResource;
import org.springframework.web.bind.annotation.RequestMethod;

@RequestMapping("/secure/baseline/samplemanage/sample-handles")
public interface LimsSampleHandleResource extends GenericResource<LimsSampleHandleService, LimsSampleHandleBean, Long>, GenericAuditableResource<LimsSampleHandleService, LimsSampleHandleBean, Long> {

    @RequestMapping(value = "/sample/add",method = RequestMethod.POST)
    @Log(value = "添加样本")
    void addSample(RestJsonWrapperBean wrapper);

    @RequestMapping(value = "/sample/delete",method = RequestMethod.POST)
    @Log(value = "移除样本")
    void deleteSample(RestJsonWrapperBean wrapper);

    @Log(value = "入库校验位置")
    @RequestMapping(value = "/check-samplelocations",method = RequestMethod.POST)
    JSONObject checkSampleLocations(RestJsonWrapperBean wrapper);
}
